import Version.calligraphy_version
import Version.eventbus_version
import Version.lifecycle_version
import Version.rxandroid_version
import Version.rxjava_room_version
import Version.rxjava_version
import Version.work_version
import Version.zxing_version

/**
 * Created by Rambo 2021/8/12
 * Describe:
 */

object CompileConfiguration {
    //控制当前环境和签名
    const val isReleaseSigning = true
    const val isReleaseEnvironment = true
}

object BuildVersion {
    const val compileSdkVersion = 31
    const val minSdkVersion = 19
    const val targetSdkVersion = 22

    const val versionCode = 250708
    const val versionName = "2.2.7"

    const val androidGradlePlugin = "7.0.0"
    const val kotlinGradlePlugin = "1.5.21"
}

object Version {
    const val core_ktx = "1.6.0"
    const val appcompat = "1.2.0"
    const val material = "1.3.0"
    const val mqtt = "1.2.5"
    const val gson = "2.8.2"
    const val mmkv = "1.2.10"
    const val relinker = "1.4.4"
    const val bugly = "3.2.3"
    const val room = "2.4.0"
    const val protobuf_protoc = "3.8.0"
    const val protobuf_plugin = "0.8.17"
    const val protobuf_lite = "3.0.1"
    const val protoc_gen_javalite = "3.0.0"
    const val coil = "1.3.2"
    const val photoView = "2.1.3"
    const val mirror = "1.6.1"
    const val dbflow = "5.0.0-alpha1"
    const val glide = "4.12.0"
    const val overscroll = "1.1.1"
    const val fastjson = "1.2.39"
    const val okhttp3 = "4.9.1"
    const val okhttp3_sdk_low = "3.12.13"
    const val okhttp3LoggingInterceptor = "3.9.0"
    const val lifecycle_version = "2.4.0"
    const val eventbus_version = "3.2.0"
    const val rxandroid_version = "2.1.1"
    const val rxjava_version = "2.2.10"
    const val rxjava_room_version = "2.3.0"
    const val zxing_version = "3.3.0"
    const val calligraphy_version = "2.3.0"
    const val work_version = "2.5.0"
}

object Libs {
    const val android_gradle_plugin =
        "com.android.tools.build:gradle:${BuildVersion.androidGradlePlugin}"
    const val kotlin_gradle_plugin =
        "org.jetbrains.kotlin:kotlin-gradle-plugin:${BuildVersion.kotlinGradlePlugin}"

    const val core_ktx = "androidx.core:core-ktx:${Version.core_ktx}"
    const val appcompat = "androidx.appcompat:appcompat:${Version.appcompat}"
    const val material = "com.google.android.material:material:${Version.material}"
    const val mqtt = "org.eclipse.paho:org.eclipse.paho.client.mqttv3:${Version.mqtt}"
    const val gson = "com.google.code.gson:gson:${Version.gson}"
    const val mmkv = "com.tencent:mmkv-static:${Version.mmkv}"
    const val relinker = "com.getkeepsafe.relinker:relinker:${Version.relinker}"
    const val bugly = "com.tencent.bugly:crashreport:${Version.bugly}"
    const val room_runtime = "androidx.room:room-runtime:${Version.room}"
    const val room_compiler = "androidx.room:room-compiler:${Version.room}"
    const val protobuf_plugin =
        "com.google.protobuf:protobuf-gradle-plugin:${Version.protobuf_plugin}"
    const val protobuf_protoc = "com.google.protobuf:protoc:${Version.protobuf_protoc}"
    const val protobuf_protoc_osx = "com.google.protobuf:protoc:${Version.protobuf_protoc}:osx-x86_64"
    const val protobuf_lite = "com.google.protobuf:protobuf-lite:${Version.protobuf_lite}"
    const val protoc_gen_javalite =
        "com.google.protobuf:protoc-gen-javalite:${Version.protoc_gen_javalite}"
    const val protoc_gen_javalite_osx =
        "com.google.protobuf:protoc-gen-javalite:${Version.protoc_gen_javalite}:osx-x86_64"
    const val coil = "io.coil-kt:coil:${Version.coil}"
    const val photo_view = "com.github.chrisbanes:PhotoView:${Version.photoView}"
    const val mirror = "net.vidageek:mirror:${Version.mirror}"
    const val dbflow_core = "com.github.agrosner.dbflow:core:${Version.dbflow}"

    const val dbflow_processor = "com.github.agrosner.dbflow:processor:${Version.dbflow}"
    const val dbflow_lib = "com.github.agrosner.dbflow:lib:${Version.dbflow}"
    const val dbflow_provider = "com.github.agrosner.dbflow:contentprovider:${Version.dbflow}"


    const val glide = "com.github.bumptech.glide:glide:${Version.glide}"
    const val glide_compiler = "com.github.bumptech.glide:compiler:${Version.glide}"
    const val overscroll = "io.github.everythingme:overscroll-decor-android:${Version.overscroll}"

    const val fastjson = "com.alibaba:fastjson:${Version.fastjson}"
    const val okhttp3 = "com.squareup.okhttp3:okhttp:${Version.okhttp3}"
    const val okhttp3_sdk_low = "com.squareup.okhttp3:okhttp:${Version.okhttp3_sdk_low}"
    const val okhttp3_logging_interceptor =
        "com.squareup.okhttp3:logging-interceptor:${Version.okhttp3LoggingInterceptor}"

    // ViewModel
    const val view_model = "androidx.lifecycle:lifecycle-viewmodel-ktx:$lifecycle_version"
    // LiveData
    const val live_data = "androidx.lifecycle:lifecycle-livedata-ktx:$lifecycle_version"
    // Lifecycles only (without ViewModel or LiveData)
    const val runtime = "androidx.lifecycle:lifecycle-runtime-ktx:$lifecycle_version"

    const val sfl = "androidx.swiperefreshlayout:swiperefreshlayout:1.1.0"
    const val guava = "com.google.guava:guava:28.1-android"
    const val eventbus = "org.greenrobot:eventbus:$eventbus_version"
    const val rxandroid = "io.reactivex.rxjava2:rxandroid:$rxandroid_version"
    const val rxjava = "io.reactivex.rxjava2:rxjava:$rxjava_version"
    const val rxjava_room = "androidx.room:room-rxjava2:$rxjava_room_version"
    const val zxing = "com.google.zxing:core:$zxing_version"
    const val calligraphy = "uk.co.chrisjenx:calligraphy:$calligraphy_version"
    const val work_manager = "androidx.work:work-runtime:$work_version"

}
